1. Field of the Invention
The present invention relates to the expedited transmission of machine-readable data from one site to another. More particularly, the invention concerns a method and apparatus that expeditiously transmits an updated data object from one site to another by comparing the updated data object to its previous version at the first site, sending the updated data object to the second site minus any unchanged parts, and then reconstructing the updated data object at the second site using a locally stored copy of the data""s previous version.
2. Description of the Related Art
In today""s information age, people are always seeking faster ways of exchanging data. One technique is to use faster communications media, such as substituting a T1 line for a residential telephone line, for example. Another technique compresses the data before transmission, and thereby completes the data transfer more quickly by sending a smaller package of data. In any case, the exchange of data always incurs some expense, and people always welcome new ways to transfer data quickly and thereby save money.
The remote copy environment is one area in which data transfer problems are especially acute. A direct access storage device (xe2x80x9cDASDxe2x80x9d) remote copy pair includes primary and secondary storage sites. The primary storage site receives user data from a host and stores that data utilizing DASD media such as magnetic disk drives. The primary site routinely forwards new data to the secondary site, enabling the secondary site to maintain a mirrored copy of the primary site""s contents. In this way, the secondary site may be easily substituted for the first site if the primary site fails. Data transfer is central to the remote copy environment because the primary site""s entire function is to receive and store data, and all of this data must be somehow xe2x80x9cmirroredxe2x80x9d to the secondary site. This is complicated by the fact that the amount of data transfer is often substantial, and the remote copy pairs are often separated geographically. With geographical separation, expensive transmission lines must be used to transfer data, and the transfer cost is relative to the number of transmission lines and their bandwidth.
Even though significant advances have been made in data transfer technology, IBM engineers are continually striving to reduce costs by further improving data transfer speed. In certain cost-critical or time-critical applications, known data transfer approaches may not be completely satisfactory.
Broadly, the present invention concerns a more expeditious approach to transmitting updated data objects from one site to another. Namely, a transmitting site compares the updated data object with its previous version, and only includes the changed subparts in its transmission to the receiving site. The data object is therefore sent in a compacted state, constituting a compacted data object. The transmitting site also sends a map showing the changed subparts"" relative positions within the entire data object. The receiving site retrieves a locally stored previous version of the data object, and combines the data object""s unchanged subparts (stored locally) with the changed subparts (recently sent by the transmitting site).
In one embodiment, the transmitting site makes a queue entry for each updated data object that is received. Then, the site compares the new and existing data objects and incrementally prepares the compacted data object and map. A data transmission routine serially processes the queue by transmitting, each item represented by a queue entry. If a data objects queue entry percolates to the top of the queue before the compacted data object is completed, the partially complete map and compacted data object are sent anyway, still achieving some savings in transmission speed. In this case, the data object""s brief wait time in the queue indicates that there is no backlog of data objects for transmission, and efficiency does not suffer.
In one embodiment, the invention may be implemented to provide a method to expeditiously transmit data updates by selectively omitting unchanged data parts and identifying their relative positions within the data updates. In another embodiment, the invention may be implemented to provide an apparatus, such as a computing site, programmed to expeditiously send and/or receive data updates by selectively omitting unchanged data parts and identifying their relative positions within the data updates. In still another embodiment, the invention may be implemented to provide a signal-bearing medium tangibly embodying a program of machine-readable instructions executable by a digital data processing apparatus to perform operations as described above. Another embodiment concerns logic circuitry having multiple interconnected electrically conductive elements configured to perform operations as described above.
The invention affords its users with a number of distinct advantages. Chiefly, the invention abbreviates data updates for faster transmission between computing sites. Instead of assuming that the entire data object has changed as with prior approaches, the present invention compares new and existing data objects to find the changed subparts of the new data object, and restricts data transmission to those changed subparts. With less data to send, the overall transmission occupies less time, freeing valuable input/output components to perform other tasks. Also, when the computing sites are remotely located, the reduced data transmission time saves money required to rent long distance communication lines, such as T1 lines, etc. Moreover, in contrast to prior approaches that use computation-intensive data compression algorithms, the invention achieves low processing overhead by completely omitting large blocks of data from transmission, based on results of a relatively fast data comparison. Advantageously, this invention may incoporate data compression algorithms as well, further conserving transmission bandwidth. Although the content of the transmitted data is different with this invention, overhead is still low because this type data can be sent using existing code. Furthermore, the invention is compatible with mirroring storage systems that communicate directly (i.e., peer-to-peer remote copy or xe2x80x9cPPRCxe2x80x9d systems), as well as systems that utilize a data mover to transmit data from one site to another (i.e., extended remote copy or xe2x80x9cXRCxe2x80x9d systems). Additionally, the invention works with both open and count key data (xe2x80x9cCKDxe2x80x9d) systems. The invention also provides a number of other advantages and benefits, which should be apparent from the following description of the invention.